package pe.gob.sunarp.entidad;

import java.io.Serializable;
import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;
import java.util.Set;


/**
 * The persistent class for the OBJETO_SOLICITUD database table.
 * 
 */
@Entity
@Table(name="OBJETO_SOLICITUD")
public class ObjetoSolicitud implements Serializable {
	private static final long serialVersionUID = 1L;
	private long objetoSolId;
	private String aaTitu;
	private String apeMat;
	private String apePat;
	private String codActo;
	private String critBusq;
	private Date fecInsAsientoDesde;
	private Date fecInsAsientoHasta;
	private String flagAceptaCondicion;
	private String flagEnvioDomicilio;
	private String flagHistorico;
	private BigDecimal insAsiento;
	private String nombreBien;
	private String nombres;
	private BigDecimal nsAsiePlaca;
	private BigDecimal nsAsiento;
	private String numDocumento;
	private String numMatricula;
	private String numPartida;
	private String numPlaca;
	private String numSerie;
	private String numTitu;
	private BigDecimal numpag;
	private String razSoc;
	private BigDecimal refnumPart;
	private BigDecimal refnumPartAntiguo;
	private String siglas;
	private BigDecimal subtotal;
	private String tipDocumento;
	private String tipInfDominio;
	private String tipParticipante;
	private String tipRegistro;
	private String tpoPers;
	private Date tsVeriManu;
	private String urlBusq;
	private Set<ConsumoSolicitud> consumoSolicituds;
	private TmCertificado tmCertificado;
	private Solicitud solicitud;
	private OficRegistral oficRegistral;
	private Set<VerificaAsiento> verificaAsientos;
	private Set<VerificaFicha> verificaFichas;
	private Set<VerificaTituPend> verificaTituPends;
	private Set<VerificaTomoFoja> verificaTomoFojas;
//euclides modificacion
	private Partida partida;
	private TmActo  tmActo;
//fin de la modificacion	
	
    public ObjetoSolicitud() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="OBJETO_SOL_ID", unique=true, nullable=false)
	public long getObjetoSolId() {
		return this.objetoSolId;
	}

	public void setObjetoSolId(long objetoSolId) {
		this.objetoSolId = objetoSolId;
	}


	@Column(name="AA_TITU", length=4)
	public String getAaTitu() {
		return this.aaTitu;
	}

	public void setAaTitu(String aaTitu) {
		this.aaTitu = aaTitu;
	}


	@Column(name="APE_MAT", length=50)
	public String getApeMat() {
		return this.apeMat;
	}

	public void setApeMat(String apeMat) {
		this.apeMat = apeMat;
	}


	@Column(name="APE_PAT", length=50)
	public String getApePat() {
		return this.apePat;
	}

	public void setApePat(String apePat) {
		this.apePat = apePat;
	}


	@Column(name="COD_ACTO", length=5)
	public String getCodActo() {
		return this.codActo;
	}

	public void setCodActo(String codActo) {
		this.codActo = codActo;
	}


	@Column(name="CRIT_BUSQ", length=500)
	public String getCritBusq() {
		return this.critBusq;
	}

	public void setCritBusq(String critBusq) {
		this.critBusq = critBusq;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="FEC_INS_ASIENTO_DESDE")
	public Date getFecInsAsientoDesde() {
		return this.fecInsAsientoDesde;
	}

	public void setFecInsAsientoDesde(Date fecInsAsientoDesde) {
		this.fecInsAsientoDesde = fecInsAsientoDesde;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="FEC_INS_ASIENTO_HASTA")
	public Date getFecInsAsientoHasta() {
		return this.fecInsAsientoHasta;
	}

	public void setFecInsAsientoHasta(Date fecInsAsientoHasta) {
		this.fecInsAsientoHasta = fecInsAsientoHasta;
	}


	@Column(name="FLAG_ACEPTA_CONDICION", length=1)
	public String getFlagAceptaCondicion() {
		return this.flagAceptaCondicion;
	}

	public void setFlagAceptaCondicion(String flagAceptaCondicion) {
		this.flagAceptaCondicion = flagAceptaCondicion;
	}


	@Column(name="FLAG_ENVIO_DOMICILIO", length=1)
	public String getFlagEnvioDomicilio() {
		return this.flagEnvioDomicilio;
	}

	public void setFlagEnvioDomicilio(String flagEnvioDomicilio) {
		this.flagEnvioDomicilio = flagEnvioDomicilio;
	}


	@Column(name="FLAG_HISTORICO", length=1)
	public String getFlagHistorico() {
		return this.flagHistorico;
	}

	public void setFlagHistorico(String flagHistorico) {
		this.flagHistorico = flagHistorico;
	}


	@Column(name="INS_ASIENTO", precision=4)
	public BigDecimal getInsAsiento() {
		return this.insAsiento;
	}

	public void setInsAsiento(BigDecimal insAsiento) {
		this.insAsiento = insAsiento;
	}


	@Column(name="NOMBRE_BIEN", length=254)
	public String getNombreBien() {
		return this.nombreBien;
	}

	public void setNombreBien(String nombreBien) {
		this.nombreBien = nombreBien;
	}


	@Column(length=50)
	public String getNombres() {
		return this.nombres;
	}

	public void setNombres(String nombres) {
		this.nombres = nombres;
	}


	@Column(name="NS_ASIE_PLACA", precision=3)
	public BigDecimal getNsAsiePlaca() {
		return this.nsAsiePlaca;
	}

	public void setNsAsiePlaca(BigDecimal nsAsiePlaca) {
		this.nsAsiePlaca = nsAsiePlaca;
	}


	@Column(name="NS_ASIENTO", precision=5)
	public BigDecimal getNsAsiento() {
		return this.nsAsiento;
	}

	public void setNsAsiento(BigDecimal nsAsiento) {
		this.nsAsiento = nsAsiento;
	}


	@Column(name="NUM_DOCUMENTO", length=15)
	public String getNumDocumento() {
		return this.numDocumento;
	}

	public void setNumDocumento(String numDocumento) {
		this.numDocumento = numDocumento;
	}


	@Column(name="NUM_MATRICULA", length=35)
	public String getNumMatricula() {
		return this.numMatricula;
	}

	public void setNumMatricula(String numMatricula) {
		this.numMatricula = numMatricula;
	}


	@Column(name="NUM_PARTIDA", length=8)
	public String getNumPartida() {
		return this.numPartida;
	}

	public void setNumPartida(String numPartida) {
		this.numPartida = numPartida;
	}


	@Column(name="NUM_PLACA", length=7)
	public String getNumPlaca() {
		return this.numPlaca;
	}

	public void setNumPlaca(String numPlaca) {
		this.numPlaca = numPlaca;
	}


	@Column(name="NUM_SERIE", length=35)
	public String getNumSerie() {
		return this.numSerie;
	}

	public void setNumSerie(String numSerie) {
		this.numSerie = numSerie;
	}


	@Column(name="NUM_TITU", length=8)
	public String getNumTitu() {
		return this.numTitu;
	}

	public void setNumTitu(String numTitu) {
		this.numTitu = numTitu;
	}


	public BigDecimal getNumpag() {
		return this.numpag;
	}

	public void setNumpag(BigDecimal numpag) {
		this.numpag = numpag;
	}


	@Column(name="RAZ_SOC", length=140)
	public String getRazSoc() {
		return this.razSoc;
	}

	public void setRazSoc(String razSoc) {
		this.razSoc = razSoc;
	}


	@Column(name="REFNUM_PART")
	public BigDecimal getRefnumPart() {
		return this.refnumPart;
	}

	public void setRefnumPart(BigDecimal refnumPart) {
		this.refnumPart = refnumPart;
	}


	@Column(name="REFNUM_PART_ANTIGUO")
	public BigDecimal getRefnumPartAntiguo() {
		return this.refnumPartAntiguo;
	}

	public void setRefnumPartAntiguo(BigDecimal refnumPartAntiguo) {
		this.refnumPartAntiguo = refnumPartAntiguo;
	}


	@Column(length=15)
	public String getSiglas() {
		return this.siglas;
	}

	public void setSiglas(String siglas) {
		this.siglas = siglas;
	}


	@Column(nullable=false, precision=12, scale=2)
	public BigDecimal getSubtotal() {
		return this.subtotal;
	}

	public void setSubtotal(BigDecimal subtotal) {
		this.subtotal = subtotal;
	}


	@Column(name="TIP_DOCUMENTO", length=50)
	public String getTipDocumento() {
		return this.tipDocumento;
	}

	public void setTipDocumento(String tipDocumento) {
		this.tipDocumento = tipDocumento;
	}


	@Column(name="TIP_INF_DOMINIO", length=1)
	public String getTipInfDominio() {
		return this.tipInfDominio;
	}

	public void setTipInfDominio(String tipInfDominio) {
		this.tipInfDominio = tipInfDominio;
	}


	@Column(name="TIP_PARTICIPANTE", length=50)
	public String getTipParticipante() {
		return this.tipParticipante;
	}

	public void setTipParticipante(String tipParticipante) {
		this.tipParticipante = tipParticipante;
	}


	@Column(name="TIP_REGISTRO", length=50)
	public String getTipRegistro() {
		return this.tipRegistro;
	}

	public void setTipRegistro(String tipRegistro) {
		this.tipRegistro = tipRegistro;
	}


	@Column(name="TPO_PERS", length=1)
	public String getTpoPers() {
		return this.tpoPers;
	}

	public void setTpoPers(String tpoPers) {
		this.tpoPers = tpoPers;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="TS_VERI_MANU")
	public Date getTsVeriManu() {
		return this.tsVeriManu;
	}

	public void setTsVeriManu(Date tsVeriManu) {
		this.tsVeriManu = tsVeriManu;
	}


	@Column(name="URL_BUSQ", length=500)
	public String getUrlBusq() {
		return this.urlBusq;
	}

	public void setUrlBusq(String urlBusq) {
		this.urlBusq = urlBusq;
	}


	//bi-directional many-to-one association to ConsumoSolicitud
	@OneToMany(mappedBy="objetoSolicitud")
	public Set<ConsumoSolicitud> getConsumoSolicituds() {
		return this.consumoSolicituds;
	}

	public void setConsumoSolicituds(Set<ConsumoSolicitud> consumoSolicituds) {
		this.consumoSolicituds = consumoSolicituds;
	}
	

	//bi-directional many-to-one association to TmCertificado
    @ManyToOne
	@JoinColumn(name="CERTIFICADO_ID", nullable=false)
	public TmCertificado getTmCertificado() {
		return this.tmCertificado;
	}

	public void setTmCertificado(TmCertificado tmCertificado) {
		this.tmCertificado = tmCertificado;
	}
	

	//bi-directional many-to-one association to Solicitud
    @ManyToOne
	@JoinColumn(name="SOLICITUD_ID", nullable=false)
	public Solicitud getSolicitud() {
		return this.solicitud;
	}

	public void setSolicitud(Solicitud solicitud) {
		this.solicitud = solicitud;
	}
	

	//bi-directional many-to-one association to OficRegistral
    @ManyToOne
	@JoinColumns({
		@JoinColumn(name="OFIC_REG_ID", referencedColumnName="OFIC_REG_ID", nullable=false),
		@JoinColumn(name="REG_PUB_ID", referencedColumnName="REG_PUB_ID", nullable=false)
		})
	public OficRegistral getOficRegistral() {
		return this.oficRegistral;
	}

	public void setOficRegistral(OficRegistral oficRegistral) {
		this.oficRegistral = oficRegistral;
	}
	

	//bi-directional many-to-one association to VerificaAsiento
	@OneToMany(mappedBy="objetoSolicitud")
	public Set<VerificaAsiento> getVerificaAsientos() {
		return this.verificaAsientos;
	}

	public void setVerificaAsientos(Set<VerificaAsiento> verificaAsientos) {
		this.verificaAsientos = verificaAsientos;
	}
	

	//bi-directional many-to-one association to VerificaFicha
	@OneToMany(mappedBy="objetoSolicitud")
	public Set<VerificaFicha> getVerificaFichas() {
		return this.verificaFichas;
	}

	public void setVerificaFichas(Set<VerificaFicha> verificaFichas) {
		this.verificaFichas = verificaFichas;
	}
	

	//bi-directional many-to-one association to VerificaTituPend
	@OneToMany(mappedBy="objetoSolicitud")
	public Set<VerificaTituPend> getVerificaTituPends() {
		return this.verificaTituPends;
	}

	public void setVerificaTituPends(Set<VerificaTituPend> verificaTituPends) {
		this.verificaTituPends = verificaTituPends;
	}
	

	//bi-directional many-to-one association to VerificaTomoFoja
	@OneToMany(mappedBy="objetoSolicitud")
	public Set<VerificaTomoFoja> getVerificaTomoFojas() {
		return this.verificaTomoFojas;
	}

	public void setVerificaTomoFojas(Set<VerificaTomoFoja> verificaTomoFojas) {
		this.verificaTomoFojas = verificaTomoFojas;
	}
	//modificacion euclides

	//bi-directional many-to-one association to Partida
	 @ManyToOne
		@JoinColumn(name="REFNUM_PART", nullable=false,insertable = false, updatable = false)
	public Partida getPartida() {
		return partida;
	}
	public void setPartida(Partida partida) {
		this.partida = partida;
	}
	//bi-directional many-to-one association to TmActo 
	 @ManyToOne
		@JoinColumn(name="COD_ACTO", nullable=false,insertable = false, updatable = false)
	public TmActo getTmActo() {
		return tmActo;
	}
	public void setTmActo(TmActo tmActo) {
		this.tmActo = tmActo;
	}
	
	
	
	//
}